{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 5.2. Accelerating pure Python code with Numba and just-in-time compilation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "size = 400\n",
    "iterations = 100"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def mandelbrot_python(size, iterations):\n",
    "    m = np.zeros((size, size))\n",
    "    for i in range(size):\n",
    "        for j in range(size):\n",
    "            c = (-2 + 3. / size * j +\n",
    "                 1j * (1.5 - 3. / size * i))\n",
    "            z = 0\n",
    "            for n in range(iterations):\n",
    "                if np.abs(z) <= 10:\n",
    "                    z = z * z + c\n",
    "                    m[i, j] = n\n",
    "                else:\n",
    "                    break\n",
    "    return m"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "m = mandelbrot_python(size, iterations)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "podoc": {
     "output_text": "<matplotlib.figure.Figure at 0x7f6376b9b748>"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6376b9b748>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(1, 1, figsize=(10, 10))\n",
    "ax.imshow(np.log(m), cmap=plt.cm.hot)\n",
    "ax.set_axis_off()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5.45 s ± 18.6 ms per loop (mean ± std. dev. of 7 runs,\n",
      "    1 loop each)\n"
     ]
    }
   ],
   "source": [
    "%timeit mandelbrot_python(size, iterations)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "from numba import jit"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "@jit\n",
    "def mandelbrot_numba(size, iterations):\n",
    "    m = np.zeros((size, size))\n",
    "    for i in range(size):\n",
    "        for j in range(size):\n",
    "            c = (-2 + 3. / size * j +\n",
    "                 1j * (1.5 - 3. / size * i))\n",
    "            z = 0\n",
    "            for n in range(iterations):\n",
    "                if np.abs(z) <= 10:\n",
    "                    z = z * z + c\n",
    "                    m[i, j] = n\n",
    "                else:\n",
    "                    break\n",
    "    return m"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "mandelbrot_numba(size, iterations)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "34.5 ms ± 59.4 µs per loop (mean ± std. dev. of 7 runs,\n",
      "    10 loops each)\n"
     ]
    }
   ],
   "source": [
    "%timeit mandelbrot_numba(size, iterations)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "def initialize(size):\n",
    "    x, y = np.meshgrid(np.linspace(-2, 1, size),\n",
    "                       np.linspace(-1.5, 1.5, size))\n",
    "    c = x + 1j * y\n",
    "    z = c.copy()\n",
    "    m = np.zeros((size, size))\n",
    "    return c, z, m"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "def mandelbrot_numpy(c, z, m, iterations):\n",
    "    for n in range(iterations):\n",
    "        indices = np.abs(z) <= 10\n",
    "        z[indices] = z[indices] ** 2 + c[indices]\n",
    "        m[indices] = n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "174 ms ± 2.91 ms per loop (mean ± std. dev. of 10 runs,\n",
      "    1 loop each)\n"
     ]
    }
   ],
   "source": [
    "%%timeit -n1 -r10 c, z, m = initialize(size)\n",
    "mandelbrot_numpy(c, z, m, iterations)"
   ]
  }
 ],
 "metadata": {},
 "nbformat": 4,
 "nbformat_minor": 2
}
